<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Jetson Inference: jetson-inference/tensorNet.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="NVLogo_2D.jpg"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Jetson Inference
   </div>
   <div id="projectbrief">DNN Vision Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('tensorNet_8h_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">tensorNet.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="tensorNet_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining a</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * copy of this software and associated documentation files (the &quot;Software&quot;),</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * to deal in the Software without restriction, including without limitation</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> * the rights to use, copy, modify, merge, publish, distribute, sublicense,</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> * and/or sell copies of the Software, and to permit persons to whom the</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> * Software is furnished to do so, subject to the following conditions:</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> * The above copyright notice and this permission notice shall be included in</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> * all copies or substantial portions of the Software.</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> * DEALINGS IN THE SOFTWARE.</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160; </div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#ifndef __TENSOR_NET_H__</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#define __TENSOR_NET_H__</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">// forward declaration of IInt8Calibrator</span></div><div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="namespacenvinfer1.html">   27</a></span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacenvinfer1.html">nvinfer1</a> { <span class="keyword">class </span>IInt8Calibrator; }</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">// includes</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;NvInfer.h&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="cudaUtility_8h.html">jetson-utils/cudaUtility.h</a>&gt;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="timespec_8h.html">jetson-utils/timespec.h</a>&gt;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &lt;sstream&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &lt;math.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#if NV_TENSORRT_MAJOR &gt; 1</span></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">typedef</span> nvinfer1::DimsCHW <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a>;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#define DIMS_C(x) x.d[0]</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#define DIMS_H(x) x.d[1]</span></div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#define DIMS_W(x) x.d[2]</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">   48</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">nvinfer1::Dims3</a> <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a>; </div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="tensorNet_8h.html#a2dd230b8ba7267356e52b308b5c40077">   50</a></span>&#160;<span class="preprocessor">#define DIMS_C(x) x.c</span></div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="tensorNet_8h.html#a1fc0b1785ea99bd75ec83b1eeb4e6120">   51</a></span>&#160;<span class="preprocessor">#define DIMS_H(x) x.h</span></div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="tensorNet_8h.html#a7d959cb65990da8bfea3d941d6daf416">   52</a></span>&#160;<span class="preprocessor">#define DIMS_W(x) x.w</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#ifndef NV_TENSORRT_MAJOR</span></div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="tensorNet_8h.html#aca5940a61fa51e91f41d88d9198bf935">   55</a></span>&#160;<span class="preprocessor">#define NV_TENSORRT_MAJOR 1</span></div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="tensorNet_8h.html#a7df0f049b87bee17d6aed394544e8979">   56</a></span>&#160;<span class="preprocessor">#define NV_TENSORRT_MINOR 0</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">   65</a></span>&#160;<span class="preprocessor">#define DEFAULT_MAX_BATCH_SIZE  1</span></div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">   71</a></span>&#160;<span class="preprocessor">#define LOG_TRT &quot;[TRT]   &quot;</span></div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">   79</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1a4ed47814b2f80f0e92daad5af7bc38">   81</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1a4ed47814b2f80f0e92daad5af7bc38">TYPE_DISABLED</a> = 0,      </div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">   82</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,           </div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a5bbefcad9ecb657a3841c2e8db6828d3">   83</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a5bbefcad9ecb657a3841c2e8db6828d3">TYPE_FP32</a>,              </div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a085813e6021d0d8884d768725151a526">   84</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a085813e6021d0d8884d768725151a526">TYPE_FP16</a>,              </div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a12cf69049b0ce2b80538213ab4ee4908">   85</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a12cf69049b0ce2b80538213ab4ee4908">TYPE_INT8</a>,              </div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623ad5386697191943144fa63df529e1a310">   86</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623ad5386697191943144fa63df529e1a310">NUM_PRECISIONS</a>          </div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;};</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__tensorNet.html#ga1d1f73be994173912e9d964af1122ee1">precisionTypeToStr</a>( <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> type );</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> <a class="code" href="group__tensorNet.html#ga70317416490f79e0150e9c4f46444116">precisionTypeFromStr</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* str );</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">  106</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a></div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;{</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">  108</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a> = 0,                 </div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4aeaef16f066c95dd987fbde765b8b30b2">  109</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4aeaef16f066c95dd987fbde765b8b30b2">DEVICE_DLA</a>,                             </div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a4950aeb02ff7fba02eb2fd2437788399">  110</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a4950aeb02ff7fba02eb2fd2437788399">DEVICE_DLA_0</a> = <a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4aeaef16f066c95dd987fbde765b8b30b2">DEVICE_DLA</a>,      </div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a63fbbad29461776cf20c2137a3d124f0">  111</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a63fbbad29461776cf20c2137a3d124f0">DEVICE_DLA_1</a>,                           </div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a3025e0cdcbdfca820726c95f384ebf87">  112</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a3025e0cdcbdfca820726c95f384ebf87">NUM_DEVICES</a>                             </div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;};</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__tensorNet.html#ga85c110403b6c661b4a7042fc319f39b0">deviceTypeToStr</a>( <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> type );</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> <a class="code" href="group__tensorNet.html#ga35c5a50fb1ab97a827b18012534fd7a7">deviceTypeFromStr</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* str );</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">  132</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a></div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;{</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725aad94b3fe48299211488aae3c133721b1">  134</a></span>&#160;        <a class="code" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725aad94b3fe48299211488aae3c133721b1">MODEL_CUSTOM</a> = 0,       </div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725af850960ce09a0b0d4b38edef40e5d0e4">  135</a></span>&#160;        <a class="code" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725af850960ce09a0b0d4b38edef40e5d0e4">MODEL_CAFFE</a>,            </div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725a90e832c5673631bdfe24da7cd8eb52c9">  136</a></span>&#160;        <a class="code" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725a90e832c5673631bdfe24da7cd8eb52c9">MODEL_ONNX</a>,             </div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725ad8c909322673d53ee28de66aa57bcccd">  137</a></span>&#160;        <a class="code" href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725ad8c909322673d53ee28de66aa57bcccd">MODEL_UFF</a>                       </div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;};</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__tensorNet.html#gae771c047f44cc49238c00d0e8af48106">modelTypeToStr</a>( <a class="code" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a> type );</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<a class="code" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a> <a class="code" href="group__tensorNet.html#ga85f7b445f4341d24c65bb3bbc4a3204c">modelTypeFromStr</a>( <span class="keyword">const</span> <span class="keywordtype">char</span>* str );</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">  157</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a></div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;{</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a7f84ee2f6773727f3b11408e8b2e150e">  159</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a7f84ee2f6773727f3b11408e8b2e150e">PROFILER_PREPROCESS</a> = 0,</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a624bb4adf22f078ad2804595dca02992">  160</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a624bb4adf22f078ad2804595dca02992">PROFILER_NETWORK</a>,</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a1fbcfa83e963d20d06f7c633bb2e4904">  161</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a1fbcfa83e963d20d06f7c633bb2e4904">PROFILER_POSTPROCESS</a>,</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a8cef88bc690e0a794987ade986169ee5">  162</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a8cef88bc690e0a794987ade986169ee5">PROFILER_VISUALIZE</a>,</div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">  163</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>,</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;};</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__tensorNet.html#gaf219ba5ec806feca1433d20367e0f049">profilerQueryToStr</a>( <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query );</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="group__tensorNet.html#gaaa4127ed22c7165a32d0474ebf97975e">  176</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__tensorNet.html#gaaa4127ed22c7165a32d0474ebf97975e">profilerDevice</a></div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;{</div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eaf33631f978127920224cd10c937e78d5">  178</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eaf33631f978127920224cd10c937e78d5">PROFILER_CPU</a> = 0,       </div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eadbfd2a2033cd2a8df5fa51e13ff528b7">  179</a></span>&#160;        <a class="code" href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eadbfd2a2033cd2a8df5fa51e13ff528b7">PROFILER_CUDA</a>,          </div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;};</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classtensorNet.html">  188</a></span>&#160;<span class="keyword">class </span><a class="code" href="classtensorNet.html">tensorNet</a></div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classtensorNet.html">tensorNet</a>();</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        </div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;        <span class="keywordtype">bool</span> LoadNetwork( <span class="keyword">const</span> <span class="keywordtype">char</span>* prototxt, <span class="keyword">const</span> <span class="keywordtype">char</span>* model, <span class="keyword">const</span> <span class="keywordtype">char</span>* mean=NULL,</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                                   <span class="keyword">const</span> <span class="keywordtype">char</span>* input_blob=<span class="stringliteral">&quot;data&quot;</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* output_blob=<span class="stringliteral">&quot;prob&quot;</span>,</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;                                   uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;                                   <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span>,</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                                   nvinfer1::IInt8Calibrator* calibrator=NULL, cudaStream_t stream=NULL );</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        <span class="keywordtype">bool</span> LoadNetwork( <span class="keyword">const</span> <span class="keywordtype">char</span>* prototxt, <span class="keyword">const</span> <span class="keywordtype">char</span>* model, <span class="keyword">const</span> <span class="keywordtype">char</span>* mean,</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;                                   <span class="keyword">const</span> <span class="keywordtype">char</span>* input_blob, <span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; output_blobs,</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;                                   uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                                   <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span>,</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;                                   nvinfer1::IInt8Calibrator* calibrator=NULL, cudaStream_t stream=NULL );</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        <span class="keywordtype">bool</span> LoadNetwork( <span class="keyword">const</span> <span class="keywordtype">char</span>* prototxt, <span class="keyword">const</span> <span class="keywordtype">char</span>* model, <span class="keyword">const</span> <span class="keywordtype">char</span>* mean,</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;                                   <span class="keyword">const</span> <span class="keywordtype">char</span>* input_blob, <span class="keyword">const</span> <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a>&amp; input_dims, </div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;                                   <span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; output_blobs,</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;                                   uint32_t maxBatchSize=<a class="code" href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a>, </div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;                                   <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision=<a class="code" href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a>,</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;                                   <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowGPUFallback=<span class="keyword">true</span>,</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;                                   nvinfer1::IInt8Calibrator* calibrator=NULL, cudaStream_t stream=NULL );</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        <span class="keywordtype">void</span> EnableLayerProfiler();</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        <span class="keywordtype">void</span> EnableDebug();</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classtensorNet.html#a7d0ec0d8504ac8b26c5ab4a6136599ca">  257</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classtensorNet.html#a7d0ec0d8504ac8b26c5ab4a6136599ca">AllowGPUFallback</a>()<span class="keyword"> const                            </span>{ <span class="keywordflow">return</span> mAllowGPUFallback; }</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="classtensorNet.html#a92bb737172d26bda5f67d15346a02514">  262</a></span>&#160;        <span class="keyword">inline</span> <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> <a class="code" href="classtensorNet.html#a92bb737172d26bda5f67d15346a02514">GetDevice</a>()<span class="keyword"> const                             </span>{ <span class="keywordflow">return</span> mDevice; }</div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classtensorNet.html#afb38b5f171025e987a00214cc4379ca9">  267</a></span>&#160;        <span class="keyword">inline</span> <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> <a class="code" href="classtensorNet.html#afb38b5f171025e987a00214cc4379ca9">GetPrecision</a>()<span class="keyword"> const                       </span>{ <span class="keywordflow">return</span> mPrecision; }</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div><div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="classtensorNet.html#a6b8e8dba05bc5c677027913d8c64f259">  272</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classtensorNet.html#a6b8e8dba05bc5c677027913d8c64f259">IsPrecision</a>( <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> type )<span class="keyword"> const     </span>{ <span class="keywordflow">return</span> (mPrecision == type); }</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;        <span class="keyword">static</span> <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> FindFastestPrecision( <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a>, <span class="keywordtype">bool</span> allowInt8=<span class="keyword">true</span> );</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;        <span class="keyword">static</span> std::vector&lt;precisionType&gt; DetectNativePrecisions( <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a> );</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;        </div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">bool</span> DetectNativePrecision( <span class="keyword">const</span> std::vector&lt;precisionType&gt;&amp; nativeTypes, <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> type );</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">bool</span> DetectNativePrecision( <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision, <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device=<a class="code" href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a> );</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="classtensorNet.html#a34e350ec6185277ac09ae55a79403e62">  297</a></span>&#160;        <span class="keyword">inline</span> cudaStream_t <a class="code" href="classtensorNet.html#a34e350ec6185277ac09ae55a79403e62">GetStream</a>()<span class="keyword"> const                           </span>{ <span class="keywordflow">return</span> mStream; }</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        cudaStream_t CreateStream( <span class="keywordtype">bool</span> nonBlocking=<span class="keyword">true</span> );</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;        <span class="keywordtype">void</span> SetStream( cudaStream_t stream );</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;</div><div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="classtensorNet.html#a624881afe27acd2b2fff0f0f75308ea2">  312</a></span>&#160;        <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classtensorNet.html#a624881afe27acd2b2fff0f0f75308ea2">GetPrototxtPath</a>()<span class="keyword"> const                      </span>{ <span class="keywordflow">return</span> mPrototxtPath.c_str(); }</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="classtensorNet.html#ac74d7f0571b7782b945ff85fd6894044">  317</a></span>&#160;        <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classtensorNet.html#ac74d7f0571b7782b945ff85fd6894044">GetModelPath</a>()<span class="keyword"> const                         </span>{ <span class="keywordflow">return</span> mModelPath.c_str(); }</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classtensorNet.html#acfa7f1f01b46f658ffc96f8a002e8d48">  322</a></span>&#160;        <span class="keyword">inline</span> <a class="code" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a> <a class="code" href="classtensorNet.html#acfa7f1f01b46f658ffc96f8a002e8d48">GetModelType</a>()<span class="keyword"> const                           </span>{ <span class="keywordflow">return</span> mModelType; }</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="classtensorNet.html#a0a09d691ea080bd9734c5782c8fff6fd">  327</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classtensorNet.html#a0a09d691ea080bd9734c5782c8fff6fd">IsModelType</a>( <a class="code" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a> type )<span class="keyword"> const         </span>{ <span class="keywordflow">return</span> (mModelType == type); }</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="classtensorNet.html#a49faef5920860345e503023b7c84423c">  332</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="classtensorNet.html#a49faef5920860345e503023b7c84423c">GetNetworkTime</a>()                                                                           { <span class="keywordflow">return</span> GetProfilerTime(<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a624bb4adf22f078ad2804595dca02992">PROFILER_NETWORK</a>, <a class="code" href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eadbfd2a2033cd2a8df5fa51e13ff528b7">PROFILER_CUDA</a>); }</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;        </div><div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="classtensorNet.html#ad266f93035a80dca80cd84d971e4f69b">  337</a></span>&#160;        <span class="keyword">inline</span> float2 <a class="code" href="classtensorNet.html#ad266f93035a80dca80cd84d971e4f69b">GetProfilerTime</a>( <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query )                                     { PROFILER_QUERY(query); <span class="keywordflow">return</span> mProfilerTimes[query]; }</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;        </div><div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="classtensorNet.html#a27cf81b3fecf93d2e63a61220a54b393">  342</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="classtensorNet.html#a27cf81b3fecf93d2e63a61220a54b393">GetProfilerTime</a>( <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query, <a class="code" href="group__tensorNet.html#gaaa4127ed22c7165a32d0474ebf97975e">profilerDevice</a> device ) { PROFILER_QUERY(query); <span class="keywordflow">return</span> (device == <a class="code" href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eaf33631f978127920224cd10c937e78d5">PROFILER_CPU</a>) ? mProfilerTimes[query].x : mProfilerTimes[query].y; }</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        </div><div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="classtensorNet.html#afc0f50abcf6ac71e96d51eba3ed53d4b">  347</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classtensorNet.html#afc0f50abcf6ac71e96d51eba3ed53d4b">PrintProfilerTimes</a>()</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        {</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;                printf(<span class="stringliteral">&quot;\n&quot;</span>);</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;                printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;----------------------------------------------\n&quot;</span>);</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;                printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;Timing Report %s\n&quot;</span>, GetModelPath());</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;                printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;----------------------------------------------\n&quot;</span>);</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;                <span class="keywordflow">for</span>( uint32_t n=0; n &lt;= <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>; n++ )</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;                {</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;                        <span class="keyword">const</span> <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query = (<a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a>)n;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;                        <span class="keywordflow">if</span>( PROFILER_QUERY(query) )</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;                                printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;%-12s  CPU %8.5fms  CUDA %8.5fms\n&quot;</span>, <a class="code" href="group__tensorNet.html#gaf219ba5ec806feca1433d20367e0f049">profilerQueryToStr</a>(query), mProfilerTimes[n].x, mProfilerTimes[n].y);</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;                }</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;                printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;----------------------------------------------\n\n&quot;</span>);</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;                <span class="keyword">static</span> <span class="keywordtype">bool</span> first_run=<span class="keyword">true</span>;</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;                <span class="keywordflow">if</span>( first_run )</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;                {</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;                        printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;note -- when processing a single image, run &#39;sudo jetson_clocks&#39; before\n&quot;</span></div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;                                  <span class="stringliteral">&quot;                to disable DVFS for more accurate profiling/timing measurements\n\n&quot;</span>);</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;                        </div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;                        first_run = <span class="keyword">false</span>;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;                }</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        }</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;        <a class="code" href="classtensorNet.html">tensorNet</a>();</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;                          </div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;        <span class="keywordtype">bool</span> ProfileModel( <span class="keyword">const</span> std::string&amp; deployFile, <span class="keyword">const</span> std::string&amp; modelFile,</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;                                        <span class="keyword">const</span> <span class="keywordtype">char</span>* input, <span class="keyword">const</span> <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a>&amp; inputDims,</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;                                    <span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; outputs, uint32_t maxBatchSize, </div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;                                    <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> precision, <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a> device, <span class="keywordtype">bool</span> allowGPUFallback,</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;                                    nvinfer1::IInt8Calibrator* calibrator, std::ostream&amp; modelStream);</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="classtensorNet_1_1Logger.html">  401</a></span>&#160;        <span class="keyword">class </span><a class="code" href="classtensorNet_1_1Logger.html">Logger</a> : <span class="keyword">public</span> nvinfer1::ILogger                 </div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;        {</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                <span class="keywordtype">void</span> log( Severity severity, <span class="keyword">const</span> <span class="keywordtype">char</span>* msg )<span class="keyword"> override</span></div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;<span class="keyword">                </span>{</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;                        <span class="keywordflow">if</span>( severity != Severity::kINFO <span class="comment">/*|| mEnableDebug*/</span> )</div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;                                printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;%s\n&quot;</span>, msg);</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;                }</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        } gLogger;</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="classtensorNet_1_1Profiler.html">  413</a></span>&#160;        <span class="keyword">class </span><a class="code" href="classtensorNet_1_1Profiler.html">Profiler</a> : <span class="keyword">public</span> nvinfer1::IProfiler</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;        {</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;        <span class="keyword">public</span>:</div><div class="line"><a name="l00416"></a><span class="lineno"><a class="line" href="classtensorNet_1_1Profiler.html#a55a6fd3103bcd4a57379a90eff183617">  416</a></span>&#160;                <a class="code" href="classtensorNet_1_1Profiler.html#a55a6fd3103bcd4a57379a90eff183617">Profiler</a>() : timingAccumulator(0.0f)    { }</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                </div><div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="classtensorNet_1_1Profiler.html#a509ac9582f3e2f8f386363a0d43cc51c">  418</a></span>&#160;                <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classtensorNet_1_1Profiler.html#a509ac9582f3e2f8f386363a0d43cc51c">reportLayerTime</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* layerName, <span class="keywordtype">float</span> ms)</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                {</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                        printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;layer %s - %f ms\n&quot;</span>, layerName, ms);</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;                        timingAccumulator += ms;</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;                }</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;                </div><div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="classtensorNet_1_1Profiler.html#a8784d561f96bfd5a02c2bf9554f0d773">  424</a></span>&#160;                <span class="keywordtype">float</span> <a class="code" href="classtensorNet_1_1Profiler.html#a8784d561f96bfd5a02c2bf9554f0d773">timingAccumulator</a>;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;                </div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;        } gProfiler;</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="classtensorNet.html#a088c3bf591e45e52ec227491f6f299ad">  431</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classtensorNet.html#a088c3bf591e45e52ec227491f6f299ad">PROFILER_BEGIN</a>( <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query )               </div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;        { </div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;                <span class="keyword">const</span> uint32_t evt = query*2; </div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;                <span class="keyword">const</span> uint32_t flag = (1 &lt;&lt; query);</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;                <a class="code" href="group__cuda.html#ga5af54ef2b094a11a88feb67b327e1d19">CUDA</a>(cudaEventRecord(mEventsGPU[evt], mStream)); </div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;                <a class="code" href="group__time.html#ga741cdb5863f122d3e527c8b53e0cb3c3">timestamp</a>(&amp;mEventsCPU[evt]); </div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;                mProfilerQueriesUsed |= flag;</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;                mProfilerQueriesDone &amp;= ~flag;</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;        }</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="classtensorNet.html#ac8582b9a6099e3265da4c3f9fdf804ea">  446</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classtensorNet.html#ac8582b9a6099e3265da4c3f9fdf804ea">PROFILER_END</a>( <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query )         </div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;        { </div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;                <span class="keyword">const</span> uint32_t evt = query*2+1; </div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;                <a class="code" href="group__cuda.html#ga5af54ef2b094a11a88feb67b327e1d19">CUDA</a>(cudaEventRecord(mEventsGPU[evt])); </div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;                <a class="code" href="group__time.html#ga741cdb5863f122d3e527c8b53e0cb3c3">timestamp</a>(&amp;mEventsCPU[evt]); </div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;                timespec cpuTime; </div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;                <a class="code" href="group__time.html#ga3c4b729b99d06b423956e7a3a17aaeb4">timeDiff</a>(mEventsCPU[evt-1], mEventsCPU[evt], &amp;cpuTime);</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;                mProfilerTimes[query].x = <a class="code" href="group__time.html#ga762b4a9f55b4fb1a50d459cc7c384b92">timeFloat</a>(cpuTime);</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;                <span class="keywordflow">if</span>( mEnableProfiler &amp;&amp; query == <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a624bb4adf22f078ad2804595dca02992">PROFILER_NETWORK</a> ) </div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;                { </div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;                        printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;layer network time - %f ms\n&quot;</span>, gProfiler.timingAccumulator); </div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;                        gProfiler.timingAccumulator = 0.0f; </div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;                        printf(<a class="code" href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a> <span class="stringliteral">&quot;note -- when processing a single image, run &#39;sudo jetson_clocks&#39; before\n&quot;</span></div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;                                  <span class="stringliteral">&quot;                to disable DVFS for more accurate profiling/timing measurements\n&quot;</span>); </div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;                }</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;        }</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;        </div><div class="line"><a name="l00468"></a><span class="lineno"><a class="line" href="classtensorNet.html#ae2e0ae17baf6e1975aaad7a7f5c60ce9">  468</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classtensorNet.html#ae2e0ae17baf6e1975aaad7a7f5c60ce9">PROFILER_QUERY</a>( <a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a> query )</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;        {</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;                <span class="keyword">const</span> uint32_t flag = (1 &lt;&lt; query);</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;                <span class="keywordflow">if</span>( query == <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a> )</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;                {</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;                        mProfilerTimes[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>].x = 0.0f;</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;                        mProfilerTimes[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>].y = 0.0f;</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;                        <span class="keywordflow">for</span>( uint32_t n=0; n &lt; <a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>; n++ )</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;                        {</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;                                <span class="keywordflow">if</span>( PROFILER_QUERY((<a class="code" href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a>)n) )</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;                                {</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;                                        mProfilerTimes[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>].x += mProfilerTimes[n].x;</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;                                        mProfilerTimes[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a>].y += mProfilerTimes[n].y;</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;                                }</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;                        }</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;                        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;                }</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;                <span class="keywordflow">else</span> <span class="keywordflow">if</span>( mProfilerQueriesUsed &amp; flag )</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;                {</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;                        <span class="keywordflow">if</span>( !(mProfilerQueriesDone &amp; flag) )</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;                        {</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;                                <span class="keyword">const</span> uint32_t evt = query*2;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;                                <span class="keywordtype">float</span> cuda_time = 0.0f;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;                                <a class="code" href="group__cuda.html#ga5af54ef2b094a11a88feb67b327e1d19">CUDA</a>(cudaEventElapsedTime(&amp;cuda_time, mEventsGPU[evt], mEventsGPU[evt+1]));</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;                                mProfilerTimes[query].y = cuda_time;</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;                                mProfilerQueriesDone |= flag;</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;                                <span class="comment">//mProfilerQueriesUsed &amp;= ~flag;</span></div><div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;                        }</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;                        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;                }</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;                <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;        }</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;        <span class="comment">/* Member Variables */</span></div><div class="line"><a name="l00509"></a><span class="lineno"><a class="line" href="classtensorNet.html#a54005b86b851fa71aeb7a83d4ad32362">  509</a></span>&#160;        std::string <a class="code" href="classtensorNet.html#a54005b86b851fa71aeb7a83d4ad32362">mPrototxtPath</a>;</div><div class="line"><a name="l00510"></a><span class="lineno"><a class="line" href="classtensorNet.html#a7cb91e06b296431680d20e7e9fb0187d">  510</a></span>&#160;        std::string <a class="code" href="classtensorNet.html#a7cb91e06b296431680d20e7e9fb0187d">mModelPath</a>;</div><div class="line"><a name="l00511"></a><span class="lineno"><a class="line" href="classtensorNet.html#a11eeaa1e454a97a5634c7fb5ea1bc23d">  511</a></span>&#160;        std::string <a class="code" href="classtensorNet.html#a11eeaa1e454a97a5634c7fb5ea1bc23d">mMeanPath</a>;</div><div class="line"><a name="l00512"></a><span class="lineno"><a class="line" href="classtensorNet.html#ac040cf851463cd595a20a9400a5833c2">  512</a></span>&#160;        std::string <a class="code" href="classtensorNet.html#ac040cf851463cd595a20a9400a5833c2">mInputBlobName</a>;</div><div class="line"><a name="l00513"></a><span class="lineno"><a class="line" href="classtensorNet.html#aaa9ac0fae88a426f1a5325886da3b009">  513</a></span>&#160;        std::string <a class="code" href="classtensorNet.html#aaa9ac0fae88a426f1a5325886da3b009">mCacheEnginePath</a>;</div><div class="line"><a name="l00514"></a><span class="lineno"><a class="line" href="classtensorNet.html#a64fccb1894b0926e54a18fa47a271c70">  514</a></span>&#160;        std::string <a class="code" href="classtensorNet.html#a64fccb1894b0926e54a18fa47a271c70">mCacheCalibrationPath</a>;</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno"><a class="line" href="classtensorNet.html#a2f14a2f4a4dfbb51b80f80a2e47a695c">  516</a></span>&#160;        <a class="code" href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a>    <a class="code" href="classtensorNet.html#a2f14a2f4a4dfbb51b80f80a2e47a695c">mDevice</a>;</div><div class="line"><a name="l00517"></a><span class="lineno"><a class="line" href="classtensorNet.html#a164c1dcf9dcbc085c1b421855eda665f">  517</a></span>&#160;        <a class="code" href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a> <a class="code" href="classtensorNet.html#a164c1dcf9dcbc085c1b421855eda665f">mPrecision</a>;</div><div class="line"><a name="l00518"></a><span class="lineno"><a class="line" href="classtensorNet.html#ab5c88cf4590b53804ebedaa292d1402c">  518</a></span>&#160;        <a class="code" href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a>     <a class="code" href="classtensorNet.html#ab5c88cf4590b53804ebedaa292d1402c">mModelType</a>;</div><div class="line"><a name="l00519"></a><span class="lineno"><a class="line" href="classtensorNet.html#a1ed6e418a135650c7cf91498379727ae">  519</a></span>&#160;        cudaStream_t  <a class="code" href="classtensorNet.html#a1ed6e418a135650c7cf91498379727ae">mStream</a>;</div><div class="line"><a name="l00520"></a><span class="lineno"><a class="line" href="classtensorNet.html#aac52fdcc0579c0426e21141636349dea">  520</a></span>&#160;        cudaEvent_t   mEventsGPU[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a> * 2];</div><div class="line"><a name="l00521"></a><span class="lineno"><a class="line" href="classtensorNet.html#af4cb4b37a74806164257e9529cb8ed70">  521</a></span>&#160;        timespec      mEventsCPU[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a> * 2];</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;</div><div class="line"><a name="l00523"></a><span class="lineno"><a class="line" href="classtensorNet.html#a275ce2318a63dcaafc1e0120a53fe606">  523</a></span>&#160;        nvinfer1::IRuntime* <a class="code" href="classtensorNet.html#a275ce2318a63dcaafc1e0120a53fe606">mInfer</a>;</div><div class="line"><a name="l00524"></a><span class="lineno"><a class="line" href="classtensorNet.html#ad6d2272a2560bec119fa570438e3eb19">  524</a></span>&#160;        nvinfer1::ICudaEngine* <a class="code" href="classtensorNet.html#ad6d2272a2560bec119fa570438e3eb19">mEngine</a>;</div><div class="line"><a name="l00525"></a><span class="lineno"><a class="line" href="classtensorNet.html#a2c745474e60145ee826b53e294e7f478">  525</a></span>&#160;        nvinfer1::IExecutionContext* <a class="code" href="classtensorNet.html#a2c745474e60145ee826b53e294e7f478">mContext</a>;</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        </div><div class="line"><a name="l00527"></a><span class="lineno"><a class="line" href="classtensorNet.html#accab52fa354232149048440da0071573">  527</a></span>&#160;        uint32_t <a class="code" href="classtensorNet.html#accab52fa354232149048440da0071573">mWidth</a>;</div><div class="line"><a name="l00528"></a><span class="lineno"><a class="line" href="classtensorNet.html#abc0c2b349cb27ddf6e42f668fa582a34">  528</a></span>&#160;        uint32_t <a class="code" href="classtensorNet.html#abc0c2b349cb27ddf6e42f668fa582a34">mHeight</a>;</div><div class="line"><a name="l00529"></a><span class="lineno"><a class="line" href="classtensorNet.html#ac4e059779c0fba12c1ec2380c05b8104">  529</a></span>&#160;        uint32_t <a class="code" href="classtensorNet.html#ac4e059779c0fba12c1ec2380c05b8104">mInputSize</a>;</div><div class="line"><a name="l00530"></a><span class="lineno"><a class="line" href="classtensorNet.html#a03d8f99ffd7dfdc4bab679592e97c4f2">  530</a></span>&#160;        <span class="keywordtype">float</span>*   <a class="code" href="classtensorNet.html#a03d8f99ffd7dfdc4bab679592e97c4f2">mInputCPU</a>;</div><div class="line"><a name="l00531"></a><span class="lineno"><a class="line" href="classtensorNet.html#a9530becbabaf219e3e85d0df5f4cc2b6">  531</a></span>&#160;        <span class="keywordtype">float</span>*   <a class="code" href="classtensorNet.html#a9530becbabaf219e3e85d0df5f4cc2b6">mInputCUDA</a>;</div><div class="line"><a name="l00532"></a><span class="lineno"><a class="line" href="classtensorNet.html#a32dbfb5b3d2cb82002ec288c237a0c9c">  532</a></span>&#160;        float2   mProfilerTimes[<a class="code" href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a> + 1];</div><div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="classtensorNet.html#a545348243b65ce04047fd10d47e1716c">  533</a></span>&#160;        uint32_t <a class="code" href="classtensorNet.html#a545348243b65ce04047fd10d47e1716c">mProfilerQueriesUsed</a>;</div><div class="line"><a name="l00534"></a><span class="lineno"><a class="line" href="classtensorNet.html#a3b5be95254ce71931305f4086f23f18a">  534</a></span>&#160;        uint32_t <a class="code" href="classtensorNet.html#a3b5be95254ce71931305f4086f23f18a">mProfilerQueriesDone</a>;</div><div class="line"><a name="l00535"></a><span class="lineno"><a class="line" href="classtensorNet.html#a0027d8b3617cfc905465925dd6d84b0f">  535</a></span>&#160;        uint32_t <a class="code" href="classtensorNet.html#a0027d8b3617cfc905465925dd6d84b0f">mMaxBatchSize</a>;</div><div class="line"><a name="l00536"></a><span class="lineno"><a class="line" href="classtensorNet.html#aa8bbf97d979c62018f42cc44b5cb81e8">  536</a></span>&#160;        <span class="keywordtype">bool</span>        <a class="code" href="classtensorNet.html#aa8bbf97d979c62018f42cc44b5cb81e8">mEnableProfiler</a>;</div><div class="line"><a name="l00537"></a><span class="lineno"><a class="line" href="classtensorNet.html#a84ad901a2a0dc4aaf740d40307437b2b">  537</a></span>&#160;        <span class="keywordtype">bool</span>     <a class="code" href="classtensorNet.html#a84ad901a2a0dc4aaf740d40307437b2b">mEnableDebug</a>;</div><div class="line"><a name="l00538"></a><span class="lineno"><a class="line" href="classtensorNet.html#a8e7b5913f3f54d4bb0e6aa8e6071a74a">  538</a></span>&#160;        <span class="keywordtype">bool</span>        <a class="code" href="classtensorNet.html#a8e7b5913f3f54d4bb0e6aa8e6071a74a">mAllowGPUFallback</a>;</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div><div class="line"><a name="l00540"></a><span class="lineno"><a class="line" href="classtensorNet.html#af7da0313dd945e81649e24b07e0fac0e">  540</a></span>&#160;        <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a> <a class="code" href="classtensorNet.html#af7da0313dd945e81649e24b07e0fac0e">mInputDims</a>;</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;        </div><div class="line"><a name="l00542"></a><span class="lineno"><a class="line" href="structtensorNet_1_1outputLayer.html">  542</a></span>&#160;        <span class="keyword">struct </span><a class="code" href="structtensorNet_1_1outputLayer.html">outputLayer</a></div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;        {</div><div class="line"><a name="l00544"></a><span class="lineno"><a class="line" href="structtensorNet_1_1outputLayer.html#ad34ba0cdaad850011130a611becbc31e">  544</a></span>&#160;                std::string <a class="code" href="structtensorNet_1_1outputLayer.html#ad34ba0cdaad850011130a611becbc31e">name</a>;</div><div class="line"><a name="l00545"></a><span class="lineno"><a class="line" href="structtensorNet_1_1outputLayer.html#a632fc84fc29c3df3a9fa7d7c377362a2">  545</a></span>&#160;                <a class="code" href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a> <a class="code" href="structtensorNet_1_1outputLayer.html#a632fc84fc29c3df3a9fa7d7c377362a2">dims</a>;</div><div class="line"><a name="l00546"></a><span class="lineno"><a class="line" href="structtensorNet_1_1outputLayer.html#ab5c8d8f6651c9696cf5e4b15e7dc1d80">  546</a></span>&#160;                uint32_t <a class="code" href="structtensorNet_1_1outputLayer.html#ab5c8d8f6651c9696cf5e4b15e7dc1d80">size</a>;</div><div class="line"><a name="l00547"></a><span class="lineno"><a class="line" href="structtensorNet_1_1outputLayer.html#ae3c4a2d254cf1258759b7ff95d9fcbde">  547</a></span>&#160;                <span class="keywordtype">float</span>* <a class="code" href="structtensorNet_1_1outputLayer.html#ae3c4a2d254cf1258759b7ff95d9fcbde">CPU</a>;</div><div class="line"><a name="l00548"></a><span class="lineno"><a class="line" href="structtensorNet_1_1outputLayer.html#a29650e14f1fb9e3ac257d623f5542583">  548</a></span>&#160;                <span class="keywordtype">float</span>* <a class="code" href="structtensorNet_1_1outputLayer.html#a29650e14f1fb9e3ac257d623f5542583">CUDA</a>;</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        };</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;        </div><div class="line"><a name="l00551"></a><span class="lineno"><a class="line" href="classtensorNet.html#a3487d6af48f91afcbeea76552d21d1c5">  551</a></span>&#160;        std::vector&lt;outputLayer&gt; <a class="code" href="classtensorNet.html#a3487d6af48f91afcbeea76552d21d1c5">mOutputs</a>;</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;};</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="group__tensorNet_html_ga5d4597e0e7beae7133d542e220528725"><div class="ttname"><a href="group__tensorNet.html#ga5d4597e0e7beae7133d542e220528725">modelType</a></div><div class="ttdeci">modelType</div><div class="ttdoc">Enumeration indicating the format of the model that&amp;#39;s imported in TensorRT (either caffe...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:132</div></div>
<div class="ttc" id="group__tensorNet_html_ga85f7b445f4341d24c65bb3bbc4a3204c"><div class="ttname"><a href="group__tensorNet.html#ga85f7b445f4341d24c65bb3bbc4a3204c">modelTypeFromStr</a></div><div class="ttdeci">modelType modelTypeFromStr(const char *str)</div><div class="ttdoc">Parse the model format from a string. </div></div>
<div class="ttc" id="group__tensorNet_html_gaac6604fd52c6e5db82877390e0378623"><div class="ttname"><a href="group__tensorNet.html#gaac6604fd52c6e5db82877390e0378623">precisionType</a></div><div class="ttdeci">precisionType</div><div class="ttdoc">Enumeration for indicating the desired precision that the network should run in, if available in hard...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:79</div></div>
<div class="ttc" id="group__time_html_ga762b4a9f55b4fb1a50d459cc7c384b92"><div class="ttname"><a href="group__time.html#ga762b4a9f55b4fb1a50d459cc7c384b92">timeFloat</a></div><div class="ttdeci">float timeFloat(const timespec &amp;a)</div><div class="ttdoc">Convert to 32-bit float (in milliseconds). </div><div class="ttdef"><b>Definition:</b> timespec.h:132</div></div>
<div class="ttc" id="group__tensorNet_html_ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b"><div class="ttname"><a href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4adc7f3f88455afa81458863e5b3092e4b">DEVICE_GPU</a></div><div class="ttdoc">GPU (if multiple GPUs are present, a specific GPU can be selected with cudaSetDevice() ...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:108</div></div>
<div class="ttc" id="group__tensorNet_html_gae34d45c0faa674ef4cc0fbfc8fae5809"><div class="ttname"><a href="group__tensorNet.html#gae34d45c0faa674ef4cc0fbfc8fae5809">profilerQuery</a></div><div class="ttdeci">profilerQuery</div><div class="ttdoc">Profiling queries. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:157</div></div>
<div class="ttc" id="classtensorNet_html_ad266f93035a80dca80cd84d971e4f69b"><div class="ttname"><a href="classtensorNet.html#ad266f93035a80dca80cd84d971e4f69b">tensorNet::GetProfilerTime</a></div><div class="ttdeci">float2 GetProfilerTime(profilerQuery query)</div><div class="ttdoc">Retrieve the profiler runtime (in milliseconds). </div><div class="ttdef"><b>Definition:</b> tensorNet.h:337</div></div>
<div class="ttc" id="classtensorNet_html_a49faef5920860345e503023b7c84423c"><div class="ttname"><a href="classtensorNet.html#a49faef5920860345e503023b7c84423c">tensorNet::GetNetworkTime</a></div><div class="ttdeci">float GetNetworkTime()</div><div class="ttdoc">Retrieve the network runtime (in milliseconds). </div><div class="ttdef"><b>Definition:</b> tensorNet.h:332</div></div>
<div class="ttc" id="classtensorNet_html_a8e7b5913f3f54d4bb0e6aa8e6071a74a"><div class="ttname"><a href="classtensorNet.html#a8e7b5913f3f54d4bb0e6aa8e6071a74a">tensorNet::mAllowGPUFallback</a></div><div class="ttdeci">bool mAllowGPUFallback</div><div class="ttdef"><b>Definition:</b> tensorNet.h:538</div></div>
<div class="ttc" id="classtensorNet_html_a92bb737172d26bda5f67d15346a02514"><div class="ttname"><a href="classtensorNet.html#a92bb737172d26bda5f67d15346a02514">tensorNet::GetDevice</a></div><div class="ttdeci">deviceType GetDevice() const</div><div class="ttdoc">Retrieve the device being used for execution. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:262</div></div>
<div class="ttc" id="group__tensorNet_html_ga35c5a50fb1ab97a827b18012534fd7a7"><div class="ttname"><a href="group__tensorNet.html#ga35c5a50fb1ab97a827b18012534fd7a7">deviceTypeFromStr</a></div><div class="ttdeci">deviceType deviceTypeFromStr(const char *str)</div><div class="ttdoc">Parse the device type from a string. </div></div>
<div class="ttc" id="classtensorNet_html_a27cf81b3fecf93d2e63a61220a54b393"><div class="ttname"><a href="classtensorNet.html#a27cf81b3fecf93d2e63a61220a54b393">tensorNet::GetProfilerTime</a></div><div class="ttdeci">float GetProfilerTime(profilerQuery query, profilerDevice device)</div><div class="ttdoc">Retrieve the profiler runtime (in milliseconds). </div><div class="ttdef"><b>Definition:</b> tensorNet.h:342</div></div>
<div class="ttc" id="classtensorNet_html_a0027d8b3617cfc905465925dd6d84b0f"><div class="ttname"><a href="classtensorNet.html#a0027d8b3617cfc905465925dd6d84b0f">tensorNet::mMaxBatchSize</a></div><div class="ttdeci">uint32_t mMaxBatchSize</div><div class="ttdef"><b>Definition:</b> tensorNet.h:535</div></div>
<div class="ttc" id="structtensorNet_1_1outputLayer_html_a632fc84fc29c3df3a9fa7d7c377362a2"><div class="ttname"><a href="structtensorNet_1_1outputLayer.html#a632fc84fc29c3df3a9fa7d7c377362a2">tensorNet::outputLayer::dims</a></div><div class="ttdeci">Dims3 dims</div><div class="ttdef"><b>Definition:</b> tensorNet.h:545</div></div>
<div class="ttc" id="group__tensorNet_html_ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea"><div class="ttname"><a href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809af9132edd0371e716aed4d46e3da5e9ea">PROFILER_TOTAL</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:163</div></div>
<div class="ttc" id="classtensorNet_1_1Logger_html"><div class="ttname"><a href="classtensorNet_1_1Logger.html">tensorNet::Logger</a></div><div class="ttdoc">Logger class for GIE info/warning/errors. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:401</div></div>
<div class="ttc" id="group__tensorNet_html_ga85c110403b6c661b4a7042fc319f39b0"><div class="ttname"><a href="group__tensorNet.html#ga85c110403b6c661b4a7042fc319f39b0">deviceTypeToStr</a></div><div class="ttdeci">const char * deviceTypeToStr(deviceType type)</div><div class="ttdoc">Stringize function that returns deviceType in text. </div></div>
<div class="ttc" id="group__tensorNet_html_gae771c047f44cc49238c00d0e8af48106"><div class="ttname"><a href="group__tensorNet.html#gae771c047f44cc49238c00d0e8af48106">modelTypeToStr</a></div><div class="ttdeci">const char * modelTypeToStr(modelType type)</div><div class="ttdoc">Stringize function that returns modelType in text. </div></div>
<div class="ttc" id="group__tensorNet_html_ggae34d45c0faa674ef4cc0fbfc8fae5809a624bb4adf22f078ad2804595dca02992"><div class="ttname"><a href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a624bb4adf22f078ad2804595dca02992">PROFILER_NETWORK</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:160</div></div>
<div class="ttc" id="classtensorNet_html_ac8582b9a6099e3265da4c3f9fdf804ea"><div class="ttname"><a href="classtensorNet.html#ac8582b9a6099e3265da4c3f9fdf804ea">tensorNet::PROFILER_END</a></div><div class="ttdeci">void PROFILER_END(profilerQuery query)</div><div class="ttdoc">End a profiling query, after the network is run. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:446</div></div>
<div class="ttc" id="classtensorNet_html_ad6d2272a2560bec119fa570438e3eb19"><div class="ttname"><a href="classtensorNet.html#ad6d2272a2560bec119fa570438e3eb19">tensorNet::mEngine</a></div><div class="ttdeci">nvinfer1::ICudaEngine * mEngine</div><div class="ttdef"><b>Definition:</b> tensorNet.h:524</div></div>
<div class="ttc" id="classtensorNet_html_a64fccb1894b0926e54a18fa47a271c70"><div class="ttname"><a href="classtensorNet.html#a64fccb1894b0926e54a18fa47a271c70">tensorNet::mCacheCalibrationPath</a></div><div class="ttdeci">std::string mCacheCalibrationPath</div><div class="ttdef"><b>Definition:</b> tensorNet.h:514</div></div>
<div class="ttc" id="classtensorNet_html_a2f14a2f4a4dfbb51b80f80a2e47a695c"><div class="ttname"><a href="classtensorNet.html#a2f14a2f4a4dfbb51b80f80a2e47a695c">tensorNet::mDevice</a></div><div class="ttdeci">deviceType mDevice</div><div class="ttdef"><b>Definition:</b> tensorNet.h:516</div></div>
<div class="ttc" id="classtensorNet_html_a3487d6af48f91afcbeea76552d21d1c5"><div class="ttname"><a href="classtensorNet.html#a3487d6af48f91afcbeea76552d21d1c5">tensorNet::mOutputs</a></div><div class="ttdeci">std::vector&lt; outputLayer &gt; mOutputs</div><div class="ttdef"><b>Definition:</b> tensorNet.h:551</div></div>
<div class="ttc" id="group__tensorNet_html_gaa5d3f9981cdbd91516c1474006a80fe4"><div class="ttname"><a href="group__tensorNet.html#gaa5d3f9981cdbd91516c1474006a80fe4">deviceType</a></div><div class="ttdeci">deviceType</div><div class="ttdoc">Enumeration for indicating the desired device that the network should run on, if available in hardwar...</div><div class="ttdef"><b>Definition:</b> tensorNet.h:106</div></div>
<div class="ttc" id="classtensorNet_html_a164c1dcf9dcbc085c1b421855eda665f"><div class="ttname"><a href="classtensorNet.html#a164c1dcf9dcbc085c1b421855eda665f">tensorNet::mPrecision</a></div><div class="ttdeci">precisionType mPrecision</div><div class="ttdef"><b>Definition:</b> tensorNet.h:517</div></div>
<div class="ttc" id="classtensorNet_1_1Profiler_html_a509ac9582f3e2f8f386363a0d43cc51c"><div class="ttname"><a href="classtensorNet_1_1Profiler.html#a509ac9582f3e2f8f386363a0d43cc51c">tensorNet::Profiler::reportLayerTime</a></div><div class="ttdeci">virtual void reportLayerTime(const char *layerName, float ms)</div><div class="ttdef"><b>Definition:</b> tensorNet.h:418</div></div>
<div class="ttc" id="group__tensorNet_html_gga5d4597e0e7beae7133d542e220528725a90e832c5673631bdfe24da7cd8eb52c9"><div class="ttname"><a href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725a90e832c5673631bdfe24da7cd8eb52c9">MODEL_ONNX</a></div><div class="ttdoc">ONNX. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:136</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623a5bbefcad9ecb657a3841c2e8db6828d3"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a5bbefcad9ecb657a3841c2e8db6828d3">TYPE_FP32</a></div><div class="ttdoc">32-bit floating-point precision (FP32) </div><div class="ttdef"><b>Definition:</b> tensorNet.h:83</div></div>
<div class="ttc" id="structtensorNet_1_1outputLayer_html_a29650e14f1fb9e3ac257d623f5542583"><div class="ttname"><a href="structtensorNet_1_1outputLayer.html#a29650e14f1fb9e3ac257d623f5542583">tensorNet::outputLayer::CUDA</a></div><div class="ttdeci">float * CUDA</div><div class="ttdef"><b>Definition:</b> tensorNet.h:548</div></div>
<div class="ttc" id="group__time_html_ga741cdb5863f122d3e527c8b53e0cb3c3"><div class="ttname"><a href="group__time.html#ga741cdb5863f122d3e527c8b53e0cb3c3">timestamp</a></div><div class="ttdeci">void timestamp(timespec *timestampOut)</div><div class="ttdoc">Retrieve a timestamp of the current system time. </div><div class="ttdef"><b>Definition:</b> timespec.h:36</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1d325738f49e8e4c424ff671624e66f9">TYPE_FASTEST</a></div><div class="ttdoc">The fastest detected precision should be use (i.e. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:82</div></div>
<div class="ttc" id="group__tensorNet_html_ga3c048e603c3c16fb810eb11c36242f82"><div class="ttname"><a href="group__tensorNet.html#ga3c048e603c3c16fb810eb11c36242f82">LOG_TRT</a></div><div class="ttdeci">#define LOG_TRT</div><div class="ttdoc">Prefix used for tagging printed log output from TensorRT. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:71</div></div>
<div class="ttc" id="namespacenvinfer1_html"><div class="ttname"><a href="namespacenvinfer1.html">nvinfer1</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:27</div></div>
<div class="ttc" id="classtensorNet_html_abc0c2b349cb27ddf6e42f668fa582a34"><div class="ttname"><a href="classtensorNet.html#abc0c2b349cb27ddf6e42f668fa582a34">tensorNet::mHeight</a></div><div class="ttdeci">uint32_t mHeight</div><div class="ttdef"><b>Definition:</b> tensorNet.h:528</div></div>
<div class="ttc" id="classtensorNet_html_acfa7f1f01b46f658ffc96f8a002e8d48"><div class="ttname"><a href="classtensorNet.html#acfa7f1f01b46f658ffc96f8a002e8d48">tensorNet::GetModelType</a></div><div class="ttdeci">modelType GetModelType() const</div><div class="ttdoc">Retrieve the format of the network model. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:322</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623ad5386697191943144fa63df529e1a310"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623ad5386697191943144fa63df529e1a310">NUM_PRECISIONS</a></div><div class="ttdoc">Number of precision types defined. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:86</div></div>
<div class="ttc" id="classtensorNet_html_a1ed6e418a135650c7cf91498379727ae"><div class="ttname"><a href="classtensorNet.html#a1ed6e418a135650c7cf91498379727ae">tensorNet::mStream</a></div><div class="ttdeci">cudaStream_t mStream</div><div class="ttdef"><b>Definition:</b> tensorNet.h:519</div></div>
<div class="ttc" id="classtensorNet_html_a7cb91e06b296431680d20e7e9fb0187d"><div class="ttname"><a href="classtensorNet.html#a7cb91e06b296431680d20e7e9fb0187d">tensorNet::mModelPath</a></div><div class="ttdeci">std::string mModelPath</div><div class="ttdef"><b>Definition:</b> tensorNet.h:510</div></div>
<div class="ttc" id="classtensorNet_html_a545348243b65ce04047fd10d47e1716c"><div class="ttname"><a href="classtensorNet.html#a545348243b65ce04047fd10d47e1716c">tensorNet::mProfilerQueriesUsed</a></div><div class="ttdeci">uint32_t mProfilerQueriesUsed</div><div class="ttdef"><b>Definition:</b> tensorNet.h:533</div></div>
<div class="ttc" id="structtensorNet_1_1outputLayer_html"><div class="ttname"><a href="structtensorNet_1_1outputLayer.html">tensorNet::outputLayer</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:542</div></div>
<div class="ttc" id="group__tensorNet_html_ggae34d45c0faa674ef4cc0fbfc8fae5809a7f84ee2f6773727f3b11408e8b2e150e"><div class="ttname"><a href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a7f84ee2f6773727f3b11408e8b2e150e">PROFILER_PREPROCESS</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:159</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623a12cf69049b0ce2b80538213ab4ee4908"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a12cf69049b0ce2b80538213ab4ee4908">TYPE_INT8</a></div><div class="ttdoc">8-bit integer precision (INT8) </div><div class="ttdef"><b>Definition:</b> tensorNet.h:85</div></div>
<div class="ttc" id="classtensorNet_html_accab52fa354232149048440da0071573"><div class="ttname"><a href="classtensorNet.html#accab52fa354232149048440da0071573">tensorNet::mWidth</a></div><div class="ttdeci">uint32_t mWidth</div><div class="ttdef"><b>Definition:</b> tensorNet.h:527</div></div>
<div class="ttc" id="group__tensorNet_html_ggaa5d3f9981cdbd91516c1474006a80fe4aeaef16f066c95dd987fbde765b8b30b2"><div class="ttname"><a href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4aeaef16f066c95dd987fbde765b8b30b2">DEVICE_DLA</a></div><div class="ttdoc">Deep Learning Accelerator (DLA) Core 0 (only on Jetson Xavier) </div><div class="ttdef"><b>Definition:</b> tensorNet.h:109</div></div>
<div class="ttc" id="classtensorNet_html_af7da0313dd945e81649e24b07e0fac0e"><div class="ttname"><a href="classtensorNet.html#af7da0313dd945e81649e24b07e0fac0e">tensorNet::mInputDims</a></div><div class="ttdeci">Dims3 mInputDims</div><div class="ttdef"><b>Definition:</b> tensorNet.h:540</div></div>
<div class="ttc" id="classtensorNet_html_ae2e0ae17baf6e1975aaad7a7f5c60ce9"><div class="ttname"><a href="classtensorNet.html#ae2e0ae17baf6e1975aaad7a7f5c60ce9">tensorNet::PROFILER_QUERY</a></div><div class="ttdeci">bool PROFILER_QUERY(profilerQuery query)</div><div class="ttdoc">Query the CUDA part of a profiler query. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:468</div></div>
<div class="ttc" id="classtensorNet_html_a03d8f99ffd7dfdc4bab679592e97c4f2"><div class="ttname"><a href="classtensorNet.html#a03d8f99ffd7dfdc4bab679592e97c4f2">tensorNet::mInputCPU</a></div><div class="ttdeci">float * mInputCPU</div><div class="ttdef"><b>Definition:</b> tensorNet.h:530</div></div>
<div class="ttc" id="group__time_html_ga3c4b729b99d06b423956e7a3a17aaeb4"><div class="ttname"><a href="group__time.html#ga3c4b729b99d06b423956e7a3a17aaeb4">timeDiff</a></div><div class="ttdeci">void timeDiff(const timespec &amp;start, const timespec &amp;end, timespec *result)</div><div class="ttdoc">Find the difference between two timestamps. </div><div class="ttdef"><b>Definition:</b> timespec.h:78</div></div>
<div class="ttc" id="classtensorNet_html_a624881afe27acd2b2fff0f0f75308ea2"><div class="ttname"><a href="classtensorNet.html#a624881afe27acd2b2fff0f0f75308ea2">tensorNet::GetPrototxtPath</a></div><div class="ttdeci">const char * GetPrototxtPath() const</div><div class="ttdoc">Retrieve the path to the network prototxt file. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:312</div></div>
<div class="ttc" id="classtensorNet_html_a275ce2318a63dcaafc1e0120a53fe606"><div class="ttname"><a href="classtensorNet.html#a275ce2318a63dcaafc1e0120a53fe606">tensorNet::mInfer</a></div><div class="ttdeci">nvinfer1::IRuntime * mInfer</div><div class="ttdef"><b>Definition:</b> tensorNet.h:523</div></div>
<div class="ttc" id="classtensorNet_html_aa8bbf97d979c62018f42cc44b5cb81e8"><div class="ttname"><a href="classtensorNet.html#aa8bbf97d979c62018f42cc44b5cb81e8">tensorNet::mEnableProfiler</a></div><div class="ttdeci">bool mEnableProfiler</div><div class="ttdef"><b>Definition:</b> tensorNet.h:536</div></div>
<div class="ttc" id="classtensorNet_html_a3b5be95254ce71931305f4086f23f18a"><div class="ttname"><a href="classtensorNet.html#a3b5be95254ce71931305f4086f23f18a">tensorNet::mProfilerQueriesDone</a></div><div class="ttdeci">uint32_t mProfilerQueriesDone</div><div class="ttdef"><b>Definition:</b> tensorNet.h:534</div></div>
<div class="ttc" id="classtensorNet_1_1Profiler_html_a8784d561f96bfd5a02c2bf9554f0d773"><div class="ttname"><a href="classtensorNet_1_1Profiler.html#a8784d561f96bfd5a02c2bf9554f0d773">tensorNet::Profiler::timingAccumulator</a></div><div class="ttdeci">float timingAccumulator</div><div class="ttdef"><b>Definition:</b> tensorNet.h:424</div></div>
<div class="ttc" id="classtensorNet_html_ac4e059779c0fba12c1ec2380c05b8104"><div class="ttname"><a href="classtensorNet.html#ac4e059779c0fba12c1ec2380c05b8104">tensorNet::mInputSize</a></div><div class="ttdeci">uint32_t mInputSize</div><div class="ttdef"><b>Definition:</b> tensorNet.h:529</div></div>
<div class="ttc" id="group__tensorNet_html_ggaa5d3f9981cdbd91516c1474006a80fe4a4950aeb02ff7fba02eb2fd2437788399"><div class="ttname"><a href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a4950aeb02ff7fba02eb2fd2437788399">DEVICE_DLA_0</a></div><div class="ttdoc">Deep Learning Accelerator (DLA) Core 0 (only on Jetson Xavier) </div><div class="ttdef"><b>Definition:</b> tensorNet.h:110</div></div>
<div class="ttc" id="classtensorNet_html_a84ad901a2a0dc4aaf740d40307437b2b"><div class="ttname"><a href="classtensorNet.html#a84ad901a2a0dc4aaf740d40307437b2b">tensorNet::mEnableDebug</a></div><div class="ttdeci">bool mEnableDebug</div><div class="ttdef"><b>Definition:</b> tensorNet.h:537</div></div>
<div class="ttc" id="group__tensorNet_html_gga5d4597e0e7beae7133d542e220528725aad94b3fe48299211488aae3c133721b1"><div class="ttname"><a href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725aad94b3fe48299211488aae3c133721b1">MODEL_CUSTOM</a></div><div class="ttdoc">Created directly with TensorRT API. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:134</div></div>
<div class="ttc" id="classtensorNet_html_aaa9ac0fae88a426f1a5325886da3b009"><div class="ttname"><a href="classtensorNet.html#aaa9ac0fae88a426f1a5325886da3b009">tensorNet::mCacheEnginePath</a></div><div class="ttdeci">std::string mCacheEnginePath</div><div class="ttdef"><b>Definition:</b> tensorNet.h:513</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623a085813e6021d0d8884d768725151a526"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a085813e6021d0d8884d768725151a526">TYPE_FP16</a></div><div class="ttdoc">16-bit floating-point half precision (FP16) </div><div class="ttdef"><b>Definition:</b> tensorNet.h:84</div></div>
<div class="ttc" id="group__tensorNet_html_ggaaa4127ed22c7165a32d0474ebf97975eaf33631f978127920224cd10c937e78d5"><div class="ttname"><a href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eaf33631f978127920224cd10c937e78d5">PROFILER_CPU</a></div><div class="ttdoc">CPU walltime. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:178</div></div>
<div class="ttc" id="group__tensorNet_html_ggaac6604fd52c6e5db82877390e0378623a1a4ed47814b2f80f0e92daad5af7bc38"><div class="ttname"><a href="group__tensorNet.html#ggaac6604fd52c6e5db82877390e0378623a1a4ed47814b2f80f0e92daad5af7bc38">TYPE_DISABLED</a></div><div class="ttdoc">Unknown, unspecified, or disabled type. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:81</div></div>
<div class="ttc" id="group__tensorNet_html_gga5d4597e0e7beae7133d542e220528725ad8c909322673d53ee28de66aa57bcccd"><div class="ttname"><a href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725ad8c909322673d53ee28de66aa57bcccd">MODEL_UFF</a></div><div class="ttdoc">UFF. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:137</div></div>
<div class="ttc" id="group__tensorNet_html_ggaa5d3f9981cdbd91516c1474006a80fe4a63fbbad29461776cf20c2137a3d124f0"><div class="ttname"><a href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a63fbbad29461776cf20c2137a3d124f0">DEVICE_DLA_1</a></div><div class="ttdoc">Deep Learning Accelerator (DLA) Core 1 (only on Jetson Xavier) </div><div class="ttdef"><b>Definition:</b> tensorNet.h:111</div></div>
<div class="ttc" id="classtensorNet_html_a088c3bf591e45e52ec227491f6f299ad"><div class="ttname"><a href="classtensorNet.html#a088c3bf591e45e52ec227491f6f299ad">tensorNet::PROFILER_BEGIN</a></div><div class="ttdeci">void PROFILER_BEGIN(profilerQuery query)</div><div class="ttdoc">Begin a profiling query, before network is run. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:431</div></div>
<div class="ttc" id="group__tensorNet_html_ga5a46a965749d6118e01307fd4d4865c9"><div class="ttname"><a href="group__tensorNet.html#ga5a46a965749d6118e01307fd4d4865c9">DEFAULT_MAX_BATCH_SIZE</a></div><div class="ttdeci">#define DEFAULT_MAX_BATCH_SIZE</div><div class="ttdoc">Default maximum batch size. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:65</div></div>
<div class="ttc" id="classtensorNet_html"><div class="ttname"><a href="classtensorNet.html">tensorNet</a></div><div class="ttdoc">Abstract class for loading a tensor network with TensorRT. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:188</div></div>
<div class="ttc" id="classtensorNet_html_a6b8e8dba05bc5c677027913d8c64f259"><div class="ttname"><a href="classtensorNet.html#a6b8e8dba05bc5c677027913d8c64f259">tensorNet::IsPrecision</a></div><div class="ttdeci">bool IsPrecision(precisionType type) const</div><div class="ttdoc">Check if a particular precision is being used. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:272</div></div>
<div class="ttc" id="group__tensorNet_html_ga1d1f73be994173912e9d964af1122ee1"><div class="ttname"><a href="group__tensorNet.html#ga1d1f73be994173912e9d964af1122ee1">precisionTypeToStr</a></div><div class="ttdeci">const char * precisionTypeToStr(precisionType type)</div><div class="ttdoc">Stringize function that returns precisionType in text. </div></div>
<div class="ttc" id="classtensorNet_html_afc0f50abcf6ac71e96d51eba3ed53d4b"><div class="ttname"><a href="classtensorNet.html#afc0f50abcf6ac71e96d51eba3ed53d4b">tensorNet::PrintProfilerTimes</a></div><div class="ttdeci">void PrintProfilerTimes()</div><div class="ttdoc">Print the profiler times (in millseconds). </div><div class="ttdef"><b>Definition:</b> tensorNet.h:347</div></div>
<div class="ttc" id="classtensorNet_html_a34e350ec6185277ac09ae55a79403e62"><div class="ttname"><a href="classtensorNet.html#a34e350ec6185277ac09ae55a79403e62">tensorNet::GetStream</a></div><div class="ttdeci">cudaStream_t GetStream() const</div><div class="ttdoc">Retrieve the stream that the device is operating on. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:297</div></div>
<div class="ttc" id="group__tensorNet_html_gaf219ba5ec806feca1433d20367e0f049"><div class="ttname"><a href="group__tensorNet.html#gaf219ba5ec806feca1433d20367e0f049">profilerQueryToStr</a></div><div class="ttdeci">const char * profilerQueryToStr(profilerQuery query)</div><div class="ttdoc">Stringize function that returns profilerQuery in text. </div></div>
<div class="ttc" id="classtensorNet_html_a9530becbabaf219e3e85d0df5f4cc2b6"><div class="ttname"><a href="classtensorNet.html#a9530becbabaf219e3e85d0df5f4cc2b6">tensorNet::mInputCUDA</a></div><div class="ttdeci">float * mInputCUDA</div><div class="ttdef"><b>Definition:</b> tensorNet.h:531</div></div>
<div class="ttc" id="timespec_8h_html"><div class="ttname"><a href="timespec_8h.html">timespec.h</a></div></div>
<div class="ttc" id="classtensorNet_html_a0a09d691ea080bd9734c5782c8fff6fd"><div class="ttname"><a href="classtensorNet.html#a0a09d691ea080bd9734c5782c8fff6fd">tensorNet::IsModelType</a></div><div class="ttdeci">bool IsModelType(modelType type) const</div><div class="ttdoc">Return true if the model is of the specified format. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:327</div></div>
<div class="ttc" id="group__tensorNet_html_ggaaa4127ed22c7165a32d0474ebf97975eadbfd2a2033cd2a8df5fa51e13ff528b7"><div class="ttname"><a href="group__tensorNet.html#ggaaa4127ed22c7165a32d0474ebf97975eadbfd2a2033cd2a8df5fa51e13ff528b7">PROFILER_CUDA</a></div><div class="ttdoc">CUDA kernel time. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:179</div></div>
<div class="ttc" id="group__cuda_html_ga5af54ef2b094a11a88feb67b327e1d19"><div class="ttname"><a href="group__cuda.html#ga5af54ef2b094a11a88feb67b327e1d19">CUDA</a></div><div class="ttdeci">#define CUDA(x)</div><div class="ttdoc">Execute a CUDA call and print out any errors. </div><div class="ttdef"><b>Definition:</b> cudaUtility.h:38</div></div>
<div class="ttc" id="structtensorNet_1_1outputLayer_html_ae3c4a2d254cf1258759b7ff95d9fcbde"><div class="ttname"><a href="structtensorNet_1_1outputLayer.html#ae3c4a2d254cf1258759b7ff95d9fcbde">tensorNet::outputLayer::CPU</a></div><div class="ttdeci">float * CPU</div><div class="ttdef"><b>Definition:</b> tensorNet.h:547</div></div>
<div class="ttc" id="classtensorNet_html_ab5c88cf4590b53804ebedaa292d1402c"><div class="ttname"><a href="classtensorNet.html#ab5c88cf4590b53804ebedaa292d1402c">tensorNet::mModelType</a></div><div class="ttdeci">modelType mModelType</div><div class="ttdef"><b>Definition:</b> tensorNet.h:518</div></div>
<div class="ttc" id="group__tensorNet_html_ggaa5d3f9981cdbd91516c1474006a80fe4a3025e0cdcbdfca820726c95f384ebf87"><div class="ttname"><a href="group__tensorNet.html#ggaa5d3f9981cdbd91516c1474006a80fe4a3025e0cdcbdfca820726c95f384ebf87">NUM_DEVICES</a></div><div class="ttdoc">Number of device types defined. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:112</div></div>
<div class="ttc" id="classtensorNet_html_afb38b5f171025e987a00214cc4379ca9"><div class="ttname"><a href="classtensorNet.html#afb38b5f171025e987a00214cc4379ca9">tensorNet::GetPrecision</a></div><div class="ttdeci">precisionType GetPrecision() const</div><div class="ttdoc">Retrieve the type of precision being used. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:267</div></div>
<div class="ttc" id="classtensorNet_html_ac74d7f0571b7782b945ff85fd6894044"><div class="ttname"><a href="classtensorNet.html#ac74d7f0571b7782b945ff85fd6894044">tensorNet::GetModelPath</a></div><div class="ttdeci">const char * GetModelPath() const</div><div class="ttdoc">Retrieve the path to the network model file. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:317</div></div>
<div class="ttc" id="classtensorNet_1_1Profiler_html"><div class="ttname"><a href="classtensorNet_1_1Profiler.html">tensorNet::Profiler</a></div><div class="ttdoc">Profiler interface for measuring layer timings. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:413</div></div>
<div class="ttc" id="group__tensorNet_html_ggae34d45c0faa674ef4cc0fbfc8fae5809a1fbcfa83e963d20d06f7c633bb2e4904"><div class="ttname"><a href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a1fbcfa83e963d20d06f7c633bb2e4904">PROFILER_POSTPROCESS</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:161</div></div>
<div class="ttc" id="classtensorNet_html_a54005b86b851fa71aeb7a83d4ad32362"><div class="ttname"><a href="classtensorNet.html#a54005b86b851fa71aeb7a83d4ad32362">tensorNet::mPrototxtPath</a></div><div class="ttdeci">std::string mPrototxtPath</div><div class="ttdef"><b>Definition:</b> tensorNet.h:509</div></div>
<div class="ttc" id="classtensorNet_html_a2c745474e60145ee826b53e294e7f478"><div class="ttname"><a href="classtensorNet.html#a2c745474e60145ee826b53e294e7f478">tensorNet::mContext</a></div><div class="ttdeci">nvinfer1::IExecutionContext * mContext</div><div class="ttdef"><b>Definition:</b> tensorNet.h:525</div></div>
<div class="ttc" id="group__tensorNet_html_ga70317416490f79e0150e9c4f46444116"><div class="ttname"><a href="group__tensorNet.html#ga70317416490f79e0150e9c4f46444116">precisionTypeFromStr</a></div><div class="ttdeci">precisionType precisionTypeFromStr(const char *str)</div><div class="ttdoc">Parse the precision type from a string. </div></div>
<div class="ttc" id="structtensorNet_1_1outputLayer_html_ad34ba0cdaad850011130a611becbc31e"><div class="ttname"><a href="structtensorNet_1_1outputLayer.html#ad34ba0cdaad850011130a611becbc31e">tensorNet::outputLayer::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> tensorNet.h:544</div></div>
<div class="ttc" id="group__tensorNet_html_ggae34d45c0faa674ef4cc0fbfc8fae5809a8cef88bc690e0a794987ade986169ee5"><div class="ttname"><a href="group__tensorNet.html#ggae34d45c0faa674ef4cc0fbfc8fae5809a8cef88bc690e0a794987ade986169ee5">PROFILER_VISUALIZE</a></div><div class="ttdef"><b>Definition:</b> tensorNet.h:162</div></div>
<div class="ttc" id="classtensorNet_html_ac040cf851463cd595a20a9400a5833c2"><div class="ttname"><a href="classtensorNet.html#ac040cf851463cd595a20a9400a5833c2">tensorNet::mInputBlobName</a></div><div class="ttdeci">std::string mInputBlobName</div><div class="ttdef"><b>Definition:</b> tensorNet.h:512</div></div>
<div class="ttc" id="group__tensorNet_html_gaaa4127ed22c7165a32d0474ebf97975e"><div class="ttname"><a href="group__tensorNet.html#gaaa4127ed22c7165a32d0474ebf97975e">profilerDevice</a></div><div class="ttdeci">profilerDevice</div><div class="ttdoc">Profiler device. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:176</div></div>
<div class="ttc" id="group__tensorNet_html_gga5d4597e0e7beae7133d542e220528725af850960ce09a0b0d4b38edef40e5d0e4"><div class="ttname"><a href="group__tensorNet.html#gga5d4597e0e7beae7133d542e220528725af850960ce09a0b0d4b38edef40e5d0e4">MODEL_CAFFE</a></div><div class="ttdoc">caffemodel </div><div class="ttdef"><b>Definition:</b> tensorNet.h:135</div></div>
<div class="ttc" id="classtensorNet_1_1Profiler_html_a55a6fd3103bcd4a57379a90eff183617"><div class="ttname"><a href="classtensorNet_1_1Profiler.html#a55a6fd3103bcd4a57379a90eff183617">tensorNet::Profiler::Profiler</a></div><div class="ttdeci">Profiler()</div><div class="ttdef"><b>Definition:</b> tensorNet.h:416</div></div>
<div class="ttc" id="cudaUtility_8h_html"><div class="ttname"><a href="cudaUtility_8h.html">cudaUtility.h</a></div></div>
<div class="ttc" id="classtensorNet_html_a7d0ec0d8504ac8b26c5ab4a6136599ca"><div class="ttname"><a href="classtensorNet.html#a7d0ec0d8504ac8b26c5ab4a6136599ca">tensorNet::AllowGPUFallback</a></div><div class="ttdeci">bool AllowGPUFallback() const</div><div class="ttdoc">Return true if GPU fallback is enabled. </div><div class="ttdef"><b>Definition:</b> tensorNet.h:257</div></div>
<div class="ttc" id="tensorNet_8h_html_a64c8f3dfeacfa962ff9e23c586aedd1b"><div class="ttname"><a href="tensorNet_8h.html#a64c8f3dfeacfa962ff9e23c586aedd1b">Dims3</a></div><div class="ttdeci">nvinfer1::Dims3 Dims3</div><div class="ttdef"><b>Definition:</b> tensorNet.h:48</div></div>
<div class="ttc" id="classtensorNet_html_a11eeaa1e454a97a5634c7fb5ea1bc23d"><div class="ttname"><a href="classtensorNet.html#a11eeaa1e454a97a5634c7fb5ea1bc23d">tensorNet::mMeanPath</a></div><div class="ttdeci">std::string mMeanPath</div><div class="ttdef"><b>Definition:</b> tensorNet.h:511</div></div>
<div class="ttc" id="structtensorNet_1_1outputLayer_html_ab5c8d8f6651c9696cf5e4b15e7dc1d80"><div class="ttname"><a href="structtensorNet_1_1outputLayer.html#ab5c8d8f6651c9696cf5e4b15e7dc1d80">tensorNet::outputLayer::size</a></div><div class="ttdeci">uint32_t size</div><div class="ttdef"><b>Definition:</b> tensorNet.h:546</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_2e4d84877693cd000e5cb535f4b23486.html">jetson-inference</a></li><li class="navelem"><a class="el" href="tensorNet_8h.html">tensorNet.h</a></li>
    <li class="footer">Generated on Fri Jun 21 2019 16:23:14 for Jetson Inference by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
